/*
  三角形的个数
  题目描述
    可多同学收集了 n 根木棒，它想选择其中任意三根木棒拼成三角形，请问总共有多少种拼法？
    已知每根木棒的长度 a1、a2、…、an，必须满足 1 <= i < j < k <= n 且可以拼成三角形。
  输入描述
    第一行，一个正整数n。（3 <= n <= 100）
    第二行，n 个正整数，依次为n根木棒的长度。木棒的长度均为不大于 100 的正整数。
  输出描述
    一个整数，为拼成的三角形的个数。
  样例1
    输入
      5
      5 3 1 2 4
    输出
      3
  提示
    构成三角形的条件：任意两边之和必须大于第三边。
*/

#include <iostream>

using namespace std;

int main() {
    int a[1005];
    int n;
    int num = 0;

    cin >> n;
    for (int i = 0; i <= n - 1; i++) {
        cin >> a[i];
    }

    for (int i = 0; i <= n - 1; i++) {
        for (int j = i + 1; j <= n - 1; j++) {
            for (int k = j + 1; k <= n - 1; k++) {
                if (a[i] + a[j] > a[k] && a[i] + a[k] > a[j] && a[j] + a[k] > a[i]) {
                    num++;
                }
            }
        }
    }

    cout << num;

	return 0;
}